Force feedback transmission mechanisms

ABSTRACT

A mechanism for providing selective engagement of spring members to a user manipulatable object in a force feedback interface device. A moveable member included in a force feedback mechanism is moveable in a degree of freedom to transmit forces to the user manipulatable object, such as a joystick handle. A spring member can be selectively coupled and decoupled between a grounded member and the moveable member. The spring member provides a spring force on the moveable member that biases the joystick handle to a desired position, such as the center of the degree of freedom. A dynamic calibration procedure reduces inaccuracies when sensing the position of the user manipulandum by only reading new range limits when the actuator is not outputting a force in the direction of that limit. A capstan drive mechanism is preferably coupled between the actuator and linkage mechanism, where a capstan drum includes a curved end over which the cable is routed, the curved end including flanges to substantially prevent the cable from slipping of the sides of the end. The capstan drum includes a tensioning spring member coupled to one or both ends of the cable for tensioning the cable.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of co-pending parent patentapplication Ser. No. 08/961,790, filed Oct. 31, 1997, on behalf of Mooreet al., entitled "High Fidelity Mechanical Transmission System",assigned to the assignee of the present application, and which isincorporated by reference herein.

BACKGROUND OF THE INVENTION

The present invention relates generally to interface devices betweenhumans and computers, and more particularly to computer interfacedevices that provide force feedback to the user.

Interface devices are used extensively with computer systems in theimplementation of computer-controlled games, simulations, and otherapplications very popular with the mass market of home consumers. In atypical implementation, a computer system displays a visual environmentto a user on a display device. Users can interact with the displayedenvironment by inputting commands or data from the interface device.Popular interface devices include joysticks, "joypad" buttoncontrollers, mice, trackballs, styluses, tablets, pressure spheres, footor hand pedals, or the like, that are connected to the computer systemcontrolling the displayed environment. The computer updates theenvironment in response to the user's manipulation of a movedmanipulandum such as a joystick handle or mouse, and provides visualfeedback to the user using the display screen.

In some interface devices, haptic (e.g., tactile) feedback is alsoprovided to the user, more generally known as "force feedback." Thesetypes of interface devices can provide physical sensations to the usermanipulating the physical object of the interface device. Typically,motors or other actuators of the interface device are coupled to themanipulandum and are connected to the controlling computer system. Thecomputer system receives sensor signals from the interface device andsends appropriate force feedback control signals to the actuators inconjunction with host events. The actuators then provide forces on themanipulandum. A local microprocessor can be used to offload somecomputational burden on the host. The computer system can thus conveyphysical sensations to the user in conjunction with other visual andauditory feedback as the user is contacting the manipulandum.Commercially available force feedback devices include the ForceFXjoystick from CH Products, Inc. and Immersion Corporation, and theSidewinder Force Feedback Pro from Microsoft Corporation.

One problem occurring in the commercially available force feedbackdevices is the free movement of the manipulandum, such as a joystickhandle, when the device is not powered. For example, standard joystickswithout force feedback capability typically include physical springscoupled between the joystick handle and the joystick base which providesa spring force on the handle and permanently functions to center thejoystick handle in its degrees of freedom, causing the handle to bebiased toward a straight and upright position and assisting in playinggames. Force feedback joysticks, however, do not include such physicalsprings. This is because the forces provided by physical springs caninterfere with the forces generated by the actuators of the forcefeedback device, which can greatly reduce the fidelity of generatedforces. For example, if a vibration is to be output on the joystick, theforce designer may not want a spring force from physical springs to befelt which would interfere with the vibration. However, a problem causedby the lack of physical springs in force feedback joysticks is that thejoystick handles are not centered in an upright or other desiredposition. Although simulated spring forces can be output by theactuators to perform this centering function during normal joystickoperation, it remains a problem when the joystick is not powered. Forexample, store owners or other vendors often display demonstration forcefeedback joysticks on shelves for users to test the way the handle gripfeels. The demonstration joysticks are typically not powered, and sinceno physical springs are included, the joystick handles are tilted to oneside, giving the undesired appearance of a faulty or broken joystick. Inaddition, spring forces on normal demonstration joystick models give theuser an indication of how the joystick feels during normal operationwhen spring forces are present, which is not possible with unpoweredforce feedback joysticks. In other situations, the user may not bepowering a force feedback joystick for some reason while playing a game,and the normal centering spring forces would not be present on thehandle, thus inhibiting game play.

A different problem occurs in force feedback peripherals having a forcetransmission mechanism such as a cable drive. In some cable drivesystems, an actuator transmits forces to a manipulandum by rotating acable attached to a capstan drum, where the drum is coupled to themanipulandum. The cable typically rides along the end of the drum as thedrum is rotated by the actuator. However, if the capstan drum is rotatedtoo far, the cable can move off the end or side of the drums causing thetransmission system to become inoperative. A different problem with thecable is keeping it correctly tensioned on the drum. When the cable hasone or two ends that are rigidly attached to points on the drum, theassembly process for the system can become time consuming and expensivedue to the requirements for tensioning the system. In addition, thecable typically requires re-tensioning as it becomes loose over timefrom use. Other problems occurring in commercially available forcefeedback devices include inaccuracies involved with sensing the positionof the manipulandum and outputting forces on the manipulandum, suchinaccuracies often contributed by plastic or other flexible componentsused in low-cost devices.

SUMMARY OF THE INVENTION

The present invention provides a force feedback interface device whichincludes several improvements to the force transmission system. Onefeature is the use of selectively engageable physical springs whichcenter the force feedback manipulandum when the device is not outputtingforces. Other features include a capstan drive mechanism including acable tensioned by a spring at both ends of the cable, and a capstandrum including flanges for preventing the cable from moving off the sideof the drum.

More particularly, a mechanism of the present invention for providingselective engagement of spring members to a user manipulatable object ina force feedback interface device includes a grounded member coupled toa grounded surface, a moveable member included in a force feedbackmechanism and moveable in a degree of freedom to transmit forces to auser manipulatable object of the force feedback interface device, and aspring member that can be selectively coupled and selectively decoupledbetween the grounded member and the moveable member. The spring memberpreferably provides a spring force on the moveable member that biasesthe user manipulatable object to a desired position, such as the centerof the degree of freedom. The force feedback interface device, includingits mechanism, sensors, and actuators, can take a variety of forms.

In one embodiment, a catch mechanism is coupled to the spring member andincludes first and second catch members. The first catch member may beselectively engaged and disengaged with the grounded second catchmember, e.g. using a latch, and the first and second catch members arecoupled to opposite ends of the spring member. The first catch membercan include one or more receptacles for receiving pegs coupled to themoveable member. When the spring member is engaged to apply a springbias to the manipulandum, the peg engages the receptacle as the moveablemember is moved. When the spring member is disengaged so that no springbias is applied to the manipulandum, the first catch member has beenmoved such that the peg does not engage the receptacle as the moveablemember is moved. The first catch member is preferably moveable by a userof the interface device to selectively engage said spring members withthe manipulandum, e.g. a portion of the first catch member can extendthrough an opening in a housing of the force feedback interface devicefor access by the user. Thus, the catch mechanism that provides thespring return on the manipulandum is also preferably the catch mechanismmoved by the user, allowing fewer parts to be used.

A dynamic calibration procedure of the present invention for reducinginaccuracies when sensing the position of the user manipulandum is alsopreferably employed in a device using, for example, a transmissionsystem such as described herein implemented with semi-flexible materialssuch as plastic. The dynamic calibration procedure normalizes the sensedposition of the user manipulandum based on the range of manipulandummovement sensed up to the current point in time. To prevent detecting a"false" limit caused by an actuator overstressing the transmissionsystem, the calibration procedure preferably only reads new range limitswhen the actuator is not outputting a force in the direction of thatlimit.

A method of the present invention for selectively providing a springforce in a force feedback interface device using a physical springincludes providing a spring member between the user manipulandum and alinkage mechanism, selectively decoupling the spring member from themanipulandum when an actuator of said interface device is to outputforces on the manipulandum, and selectively coupling the spring memberto the manipulandum when the actuator is not to output forces on themanipulandum.

In a different aspect of the present invention, a force feedbackinterface device coupled to a host computer and providing forces to auser manipulating the interface device includes a user manipulandum forphysical contact by a user, a sensor for detecting a position of themanipulandum, an actuator for applying a force to the manipulandum, anda linkage mechanism providing a degree of freedom and transmitting forcefrom the actuator to the manipulandum. Furthermore, a capstan drivemechanism is coupled between actuator and linkage mechanism and includesa capstan pulley, a moveable capstan drum, and a cable coupling thepulley to the drum. In one aspect of the present invention, the capstandrum includes a curved end over which the cable is routed, the curvedend including flanges arranged on sides of the curved end tosubstantially prevent the cable from slipping off the sides of the end.The curved end is preferably a sector, i.e., a portion of acircumference of a cylinder. In a different aspect of the presentinvention, the capstan drum includes a tensioning spring member coupledto one or both ends of the cable for tensioning the cable.

The improvements of the present invention provide a more versatile anddurable force feedback interface device. The selective spring mechanismprovides a mechanical spring bias on the user manipulandum in instanceswhen forces are not output or power is not provided to the device, yetallows high-fidelity forces to be transmitted during normal operation bydecoupling the spring bias. The capstan drive improvements allow for amore durable drive transmission that reduces problems that might occurwith a cable drive, such as the cable becoming loose or the cableslipping from a capstan drum. The dynamic calibration procedureaddresses inaccuracies of a described embodiment of the device. Theseimprovements allow a low-cost force feedback device to be more reliableand versatile.

These and other advantages of the present invention will become apparentto those skilled in the art upon reading of the following specificationof the invention and a study of the several figures of the drawing.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a force feedback system which includes ahost computer and a force feedback interface device;

FIG. 2 is a block diagram of the force feedback system of FIG. 1;

FIG. 3 is a perspective front view of a preferred embodiment of theforce feedback interface device of FIG. 2;

FIG. 4 is a perspective rear view of the embodiment of the forcefeedback interface devic of FIG. 3;

FIG. 5 is a perspective detailed view of a capstan drive mechanism ofthe present invention used for two degrees of freedom in the presentinvention;

FIGS. 6a and 6b are perspective views of the force feedback interfacedevice of FIG. 3 showing the range of motion of the handle;

FIG. 7 is a perspective view of a releasable spring mechanism of thepresent invention;

FIG. 8 is a side elevation view of the releasable spring mechanism in anengaged position; and

FIG. 9 is a side elevation view of the releasable spring mechanism in adisengaged position.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

In FIG. 1, a force feedback system 10 includes a force feedbackinterface device 12 and a host computer 18. The illustrated system 10can used for a virtual reality simulation, video game, trainingprocedure or simulation, computer application program, or otherapplication. In one preferred embodiment, a user manipulatable object 14is grasped by a user and manipulated. Images are displayed on a displayapparatus, such as screen 20, of the computer 18 in response to suchmanipulations.

The computer 18 can be a personal computer or workstation, such as anIBM-PC compatible computer, Macintosh personal computer, or a SUN orSilicon Graphics workstation. Most commonly, the digital processingsystem is a personal computer which operates under the Windows™, Unix,MacOS, or similar operating system and may include a host microprocessorsuch as a Pentium class microprocessor, PowerPC, DEC Alpha, or othertype of microprocessor. Alternatively, host computer system 18 can beone of a variety of home video game systems commonly connected to atelevision set, such as systems available from Nintendo, Sega, or Sony.In other embodiments, host computer system 18 can be a "set top box"which can be used, for example, to provide interactive televisionfunctions to users, or a "network-" or "internet-computer" which allowsusers to interact with a local or global network using standardconnections and protocols such as used for the Internet and World WideWeb.

Host computer 18 preferably implements a host application program withwhich a user is interacting via user object 14 and other peripherals, ifappropriate, and which can include force feedback functionality. Thesoftware running on the host computer 18 may be of a wide variety. Forexample, the host application program can be a simulation, video game,Web page or browser that implements HTML or VRML instructions,scientific analysis program, virtual reality training program orapplication, or other application program that utilizes input of userobject 14 and outputs force feedback commands to the user object 14. Forexample, many game application programs include force feedbackfunctionality and may communicate with the force feedback interfacedevice 12 using a standard protocol/drivers such as I-Force availablefrom Immersion Corporation. Herein, computer 18 may be referred asdisplaying "graphical objects" or "computer objects." These objects arenot physical objects, but are logical software unit collections of dataand/or procedures that may be displayed as images by computer 18 ondisplay screen 20, as is well known to those skilled in the art. Adisplayed cursor or a simulated cockpit of an aircraft might beconsidered a graphical object.

Display device 20 can be included in host computer 18 and can be astandard display screen (LCD, CRT, etc.), 3-D goggles, or any othervisual output device. Typically, the host application provides images tobe displayed on display device 20 and/or other feedback, such asauditory signals. For example, display screen 20 can display images froma game program.

The interface device 12 as illustrated in FIG. 1 is used to provide aninterface to the application running on host computer 18. For example, auser manipulatable object (or "manipulandum") 14 grasped by the user inoperating the device 12 may be a joystick handle 16 movable in one ormore degrees of freedom, as described in greater detail subsequently. Itwill be appreciated that a great number of other types of user objectscan be used with the method and apparatus of the present invention. Infact, the present invention can be used with any mechanical object whereit is desirable to provide a human/computer interface with two to sixdegrees of freedom. Such objects may include joysticks, styluses,surgical tools used in medical procedures, catheters, hypodermicneedles, wires, fiber optic bundles, screw drivers, pool cues, etc.

A housing 22 includes a mechanical apparatus for interfacing mechanicalinput and output is included in interface device 12. The mechanicalapparatus mechanically provides the degrees of freedom available to theuser object 16 and allows sensors to sense movement in those degrees offreedom and actuators to provide forces in those degrees of freedom. Themechanical apparatus is described in greater detail below. Themechanical apparatus is adapted to provide data from which a computer orother computing device such as a microprocessor (see FIG. 2) canascertain the position and/or orientation of the user object as it movesin space. This information is then translated to an image on a computerdisplay apparatus such as screen 20. The mechanical apparatus may beused, for example, by a user to change the position of a user controlledgraphical object on display screen 20 by changing the position and/ororientation of the user object 14, the computer 18 being programmed tochange the position of the graphical object in proportion to the changein position and/or orientation of the user object. In other words, theuser object is moved through space by the user to designate to thecomputer how to update the implemented program.

An electronic interface is also included in housing 22 of interfacedevice 12. The electronic interface couples the device 12 to thecomputer 18. More particularly, the electronic interface is used inpreferred embodiments to couple the various actuators and sensorscontained in device 12 (which actuators and sensors are described indetail below) to computer 18. A suitable electronic interface isdescribed in detail with reference to FIG. 2. The electronic interfaceis coupled to a mechanical apparatus within the interface device 12 andto the computer 18 by a cable 24. In other embodiments, signals can betransmitted between interface device 12 and computer 18 by wirelesstransmission and reception.

FIG. 2 is a block diagram illustrating interface device 12 and hostcomputer 18 suitable for use with the present invention. Interfacedevice 12 includes an electronic interface 30, mechanical apparatus 32,and user object 14. A similar system is described in detail in U.S. Pat.No. 5,734,373, which is hereby incorporated by reference herein in itsentirety.

As explained with reference to FIG. 1, computer 18 is preferably apersonal computer, workstation, video game console, or other computingor display device. Host computer system 18 commonly includes a hostmicroprocessor 34, random access memory (RAM) 36, read-only memory (ROM)38, input/output (I/O) electronics 40, a clock 42, a display device 20,and an audio output device 44. Host microprocessor 34 can include avariety of available microprocessors from Intel, AMD, Motorola, or othermanufacturers. Microprocessor 34 can be single microprocessor chip, orcan include multiple primary and/or co-processors and preferablyretrieves and stores instructions and other necessary data from RAM 36and ROM 38 as is well known to those skilled in the art. In thedescribed embodiment, host computer system 18 can receive sensor data ora sensor signal via a bus 46 from sensors of device 12 and otherinformation. Microprocessor 34 can receive data from bus 46 using I/Oelectronics 40, and can use I/O electronics to control other peripheraldevices. Host computer system 18 can also output commands to interfacedevice 12 via bus 46 to cause force feedback for the interface system10.

Clock 42 is a standard clock crystal or equivalent component used byhost computer 18 to provide timing to electrical signals used by hostmicroprocessor 34 and other components of the computer system 18 and canbe used to provide timing information that may be necessary indetermining force or position values. Display device 20 is describedwith reference to FIG. 1. Audio output device 44, such as speakers, canbe coupled to host microprocessor 34 via amplifiers, filters, and othercircuitry well known to those skilled in the art. Other types ofperipherals can also be coupled to host processor 34, such as storagedevices (hard disk drive, CD ROM drive, floppy disk drive, etc.),printers, and other input and output devices.

Electronic interface 30 is coupled to host computer system 18 by abi-directional bus 46. The bidirectional bus sends signals in eitherdirection between host computer system 18 and the interface device 12.Bus 46 can be a serial interface bus, such as USB, RS-232, or Firewire(1392), providing data according to a serial communication protocol, aparallel bus using a parallel protocol, or other types of buses. Aninterface port of host computer system 18, such as a USB or RS232 serialinterface port, connects bus 46 to host computer system 18.

Electronic interface 30 includes a local microprocessor 50, local clock52, local memory 54, sensor interface 56, and actuator interface 58.Interface 30 may also include additional electronic components forcommunicating via standard protocols on bus 46. In various embodiments,electronic interface 30 can be included in mechanical apparatus 32, inhost computer 18, or in its own separate housing. Different componentsof interface 30 can be included in device 12 or host computer 18 ifdesired.

Local microprocessor 50 preferably coupled to bus 46 and may be closelylinked to mechanical apparatus 14 to allow quick communication withother components of the interface device. Processor 50 is considered"local" to interface device 12, where "local" herein refers to processor50 being a separate microprocessor from any processors 34 in hostcomputer 18. "Local" also preferably refers to processor 50 beingdedicated to force feedback and sensor I/O of the interface system 10,and being closely coupled to sensors and actuators of the device 12,such as within the housing of or in a housing coupled closely to device12. Microprocessor 50 can be provided with software instructions to waitfor commands or requests from computer host 18, parse/decode the commandor request, and handle/control input and output signals according to thecommand or request. In addition, processor 50 preferably operatesindependently of host computer 18 by reading sensor signals andcalculating appropriate forces from those sensor signals, time signals,and force processes selected in accordance with a host command, andoutput appropriate control signals to the actuators. Suitablemicroprocessors for use as local microprocessor 50 include the 8X930AXby Intel, the MC68HC711E9 by Motorola or the PIC16C74 by Microchip, forexample. Microprocessor 50 can include one microprocessor chip, ormultiple processors and/or co-processor chips. In other embodiments,microprocessor 50 can include digital signal processor (DSP)functionality.

For example, in one host-controlled embodiment that utilizesmicroprocessor 50, host computer 18 can provide low-level force commandsover bus 46, which microprocessor 50 directly transmits to theactuators. In a different local control embodiment, host computer system18 provides high level supervisory commands to microprocessor 50 overbus 46, and microprocessor 50 manages low level force control loops tosensors and actuators in accordance with the high level commands andindependently of the host computer 18. In the local control embodiment,the microprocessor 50 can process inputted sensor signals to determineappropriate output actuator signals by following the instructions of a"force process" that may be stored in local memory 54 and includescalculation instructions, formulas, force magnitudes, or other data. Theforce process can command distinct force sensations, such as vibrations,textures, jolts, or even simulated interactions between displayedobjects. The host can send the local processor 50 a spatial layout ofobjects in the graphical environment so that the microprocessor has amapping of locations of graphical objects and can determine forceinteractions locally. Force feedback used in such embodiments isdescribed in greater detail in co-pending patent application Ser. No.08/879,296 and U.S. Pat. No. 5,734,373, both of which are incorporatedby reference herein.

A local clock 52 can be coupled to the microprocessor 50 to providetiming data, similar to system clock 42 of host computer 18; the timingdata might be required, for example, to compute forces output byactuators 30. Local memory 54, such as RAM and/or ROM, is preferablycoupled to microprocessor 50 in interface 30 to store instructions formicroprocessor 50 and store temporary and other data. Microprocessor 50may also store calibration parameters and the state of the forcefeedback device in a local memory 54.

Sensor interface 56 may optionally be included in electronic interface30 to convert sensor signals to signals that can be interpreted by themicroprocessor 50 and/or host computer system 18. For example, sensorinterface 56 can receive and convert signals from a digital sensor suchas an encoder or from an analog sensor using an analog to digitalconverter (ADC). Such circuits, or equivalent circuits, are well knownto those skilled in the art. Alternately, microprocessor 200 can performthese interface functions or sensor signals from the sensors can beprovided directly to host computer system 18. Actuator interface 58 canbe optionally connected between the actuators of device 12 andmicroprocessor 50 to convert signals from microprocessor 50 into signalsappropriate to drive the actuators. Interface 58 can include poweramplifiers, switches, digital to analog controllers (DACs), and othercomponents well known to those skilled in the art.

Power supply 59 can optionally be coupled to actuator interface 58and/or actuators 62 to provide electrical power. Active actuatorstypically require a separate power source to be driven. Power supply 59can be included within the housing of interface device 12, or can beprovided as a separate component, for example, connected by anelectrical power cord. Alternatively, if the USB or a similarcommunication protocol is used, actuators and other components can drawpower from the USB from the host computer. Active actuators, rather thanpassive actuators, tend to require more power than can be drawn fromUSB, but this restriction can be overcome in a number of ways. One wayis to configure interface device 12 to appear as more than oneperipheral to host computer 18; for example, each provided degree offreedom of user object 14 can be configured as a different peripheraland receive its own allocation of power. Alternatively, power from theUSB can be stored and regulated by interface device 12 and thus usedwhen needed to drive actuators 62. For example, power can be stored overtime and then immediately dissipated to provide a jolt force to the userobject. A capacitor circuit or battery, for example, can store theenergy and dissipate the energy when enough power has been stored. Thispower storage embodiment can also be used in non-USB embodiments toallow a smaller power supply 59 to be used.

Mechanical apparatus 32 is coupled to electronic interface 30 andpreferably includes sensors 60, actuators 62, and mechanism 64. Sensors60 sense the position, motion, and/or other characteristics of a userobject 14 along one or more degrees of freedom and provide signals tomicroprocessor 50 including information representative of thosecharacteristics. Typically, a sensor 60 is provided for each degree offreedom along which object 14 can be moved, or, a single compound sensorcan be used for multiple degrees of freedom. Example of sensors suitablefor embodiments described herein are digital rotary optical encoders,which sense the change in position of an object about a rotational axisand provide digital signals indicative of the change in position. Linearoptical encoders may similarly sense the change in position of object 14along a linear degree of freedom. A suitable optical encoder is the"Softpot" from U.S. Digital of Vancouver, Wash. Alternatively, analogsensors such as potentiometers can be used. It is also possible to usenon-contact sensors at different positions relative to mechanicalapparatus 32, such as Polhemus (magnetic) sensors for detecting magneticfields from objects, or an optical sensor such as a lateral effect photodiode having an emitter/detector pair. In addition, velocity sensors(e.g., tachometers) and/or acceleration sensors (e.g., accelerometers)can be used. Furthermore, either relative or absolute sensors can beemployed.

Actuators 62 transmit forces to user object 14 in one or more directionsalong one or more degrees of freedom in response to signals output bymicroprocessor 50 and/or host computer 18, i.e., they are "computercontrolled." Typically, an actuator 62 is provided for each degree offreedom along which forces are desired to be transmitted. Actuators 62can include two types: active actuators and passive actuators. Activeactuators include linear current control motors, stepper motors,pneumatic/hydraulic active actuators, a torquer (motor with limitedangular range), a voice coil actuator, and other types of actuators thattransmit a force to an object. Passive actuators can also be used foractuators 62, such as magnetic particle brakes, friction brakes, orpneumatic/hydraulic passive actuators, and generate a damping resistanceor friction in a degree of motion. In some embodiments, all or some ofsensors 60 and actuators 62 can be included together as asensor/actuator pair transducer.

Mechanism 64 can be one of several types of mechanisms. A preferredmechanism is shown in FIGS. 3-4. Other mechanisms may also be used, suchas mechanisms disclosed in U.S. Pat. Nos. 5,576,727; 5,731,804;5,721,566; 5,767,839; 5,805,140; and 5,691,898, and co-pending patentapplications Ser. Nos. 08/664,086, 08/709,012, 08/881,691, 08/961,790,and 08/965,720, all hereby incorporated by reference herein in theirentirety. User object 14 can be a joystick, or other device or articlecoupled to mechanism 64, as described above.

Other input devices 68 can optionally be included in interface system 10and send input signals to microprocessor 50 and/or host computer 18.Such input devices can include buttons, such as buttons on joystickhandle 16, used to supplement the input from the user to a game,simulation, GUI, etc. Also, dials, switches, voice recognition hardware(with software implemented by host 18), or other input mechanisms can beused.

Safety or "deadman" switch 70 is preferably included in interface deviceto provide a mechanism to allow a user to override and deactivateactuators 62, or require a user to activate actuators 62, for safetyreasons. For example, the user must continually activate or close safetyswitch 70 during manipulation of user object 14 to activate theactuators 62. If, at any time, the safety switch is deactivated(opened), power from power supply 59 is cut to actuators 62 (or theactuators are otherwise deactivated) as long as the safety switch isdeactivated. Embodiments of safety switch 70 include an optical safetyswitch, electrostatic contact switch, hand weight safety switch, etc.

In some embodiments of interface system 10, multiple mechanicalapparatuses 32 and/or electronic interfaces 30 can be coupled to asingle host computer system 18 through bus 46 (or multiple buses 46) sothat multiple users can simultaneously interface with the hostapplication program (in a multi-player game or simulation, for example).In addition, multiple players can interact in the host applicationprogram with multiple interface systems 10 using networked hostcomputers 18, as is well known to those skilled in the art.

FIGS. 3 and 4 are perspective views of one embodiment of the mechanicalportion 32 and user object 14 of interface device 12 and including thefeatures of the present invention, where these figures show orthogonalsides of the device 12. The described embodiment is a joystick apparatusincluding two rotary degrees of freedom, where a joystick handle 16 canbe moved forward and back in one degree of freedom, and left and rightin the other degree of freedom.

Mechanism 64 is provided as a gimbal mechanism 100 which couples theuser object 14 to a grounded or reference surface 102. All or some ofthe components of gimbal mechanism 100 (and other components) can bemade of metal, or, in a preferred low-cost embodiment, rigid plastic.Gimbal mechanism 100 is preferably a five-member, closed-loop parallellinkage that includes a ground member 104, extension members 106a and106b, and central members 108a and 108b. Ground member 104 is providedas a base or planar member which provides stability for device 12 on agrounded surface 102, such as a table top, floor, desk top, or otherreference surface. Ground member 104 also preferably includes uprightmembers 110 rigidly coupled to the base portion and to which theextension members 106a and 106b are coupled. The members of gimbalmechanism 100 are rotatably coupled to one another through the use ofbearings or pivots, wherein extension member 106a is rotatably coupledto ground member 104 and can rotate about an axis A, central member 108ais rotatably coupled to extension member 106a and can rotate about afloating axis D, extension member 106b is rotatably coupled to groundmember 104 and can rotate about axis B, central member 108b is rotatablycoupled to extension member 106b and can rotate about floating axis E,and central member 108a is rotatably coupled to central member 108b at acenter point P at the intersection of axes D and E. A bearing (notshown) connects the two central members 108a and 108b together at theintersection point P. Central drive member 108a is rotatably coupled toan end 109 of extension member 106a and extends at a substantiallyparallel relation with axis B. Similarly, central link member 108b isrotatably coupled to an end 112 of extension member 106b and extends ata substantially parallel relation to axis A. The axes D and E are"floating" in the sense that they are not fixed in one position as areaxes A and B. Axes A and B are substantially mutually perpendicular.

Gimbal mechanism 100 is formed as a five-member ("five-bar") closedchain. Each end of one member is coupled to the end of another member.The five-bar linkage is arranged such that extension member 106a,central member 108a, and central member 108b can be rotated about axis Ain a first degree of freedom. The linkage is also arranged such thatextension member 106b, central member 108b, and central member 108a canbe rotated about axis B in a second degree of freedom. This structure isalso disclosed in U.S. Pat. No. 5,731,804, which is incorporated byreference herein.

Joystick handle 16 is coupled to one of the central members 108a or 108b(member 108a in FIG. 3) of gimbal mechanism 100 such that it extends outof the plane defined by axes D and E. Gimbal mechanism 100 provides twodegrees of freedom to handle 16 positioned at or near to the centerpoint P of rotation. The handle 16 can be rotated about axis A and B orhave a combination of rotational movement about these axes. Joystickhandle 16 can be rotated about axis A by rotating extension member 106a,central member 108a, and central member 108b in a first revolute degreeof freedom, shown as arrow line 111. Handle 16 can also be rotated aboutaxis B by rotating extension member 106b and the two central membersabout axis B in a second revolute degree of freedom, shown by arrow line113. As joystick handle 16 is moved about axis A, floating axis D variesits position, and as joystick handle 16 is moved about axis B, floatingaxis B varies its position.

In alternate embodiments, additional degrees of freedom can be provided.For example, the joystick handle 16 can be rotated about axis Cextending perpendicularly from the plane formed by floating, axes D andE. This rotational degree of freedom can be provided with a sensorand/or an actuator to sense motion and apply forces in that degree offreedom. Additionally, a different degree of freedom can be added suchthat handle 16 can be linearly translated along floating axis C. Thisdegree of freedom can also be sensed and actuated, if desired.

Gimbal mechanism 100 also includes capstan drive mechanisms 114a and114b. In the described arrangement, a capstan drive mechanism 114 isrigidly coupled to (e.g. formed as part of) each extension member 106aand 106b. Capstan drive mechanisms 114 are included in gimbal mechanism100 to provide mechanical advantage to the output of actuators 62without introducing friction and backlash to the system. A capstan drum116 of each capstan drive mechanism is rigidly coupled to acorresponding extension member 106a or 106b. Capstan drum 116a is, ineffect, formed as part of extension member 106a; the portion of drum116a that extends away from the "L" shaped portion of member 106a isconsidered the capstan drum portion. Thus, the capstan drum andextension member are rotated about axis A simultaneously. Likewise,extension member 106b is rigidly coupled to the other capstan drum 116band both are simultaneously rotated about axis B. The capstan drivemechanisms 114 are described in greater detail with respect to FIG. 5.

Also preferably coupled to gimbal mechanism 100 are sensors 60 andactuators 62. Such transducers are preferably coupled at the link pointsbetween members of the apparatus and provide input to and output fromthe electrical system. Transducers that can be used with the presentinvention are described in greater detail with respect to FIG. 2. In thedescribed embodiment, actuators 62 include two grounded actuators 62aand 62b. The housing of grounded actuator 62a is preferably coupled toground member 104. A rotational shaft of actuator 62a is coupled to thecapstan drive mechanism 114 to apply forces to the joystick handle 16 inthe first degree of freedom about axis A. The capstan drive mechanism114 is described in greater detail with respect to FIG. 5. Groundedactuator 62b preferably corresponds to grounded transducer 62a infunction and operation, where actuator 62b is coupled to the groundmember 104 and applies forces to the joystick handle 16 in the secondrevolute degree of freedom about axis B.

Actuators 62, in the described embodiment, are preferably linear currentcontrol motors, such as DC servo motors. These motors preferably receivecurrent signals to control the direction and torque (force output) thatis produced on a shaft; the control signals for the motor are producedby microprocessor 50 as explained above. The motors may include brakeswhich allow the rotation of the shaft to be halted in a short span oftime. A suitable motor to be used as actuators 62 is HC615L6manufactured by Johnson Electric. In alternate embodiments, other typesof motors can be used, such as a stepper motor controlled with pulsewidth modulation of an applied voltage, or pneumatic motors, or passiveactuators.

Sensors 60 are, in the described embodiment, coupled to the extensionmembers 106a and 106b. One portion of the sensor is grounded by beingcoupled to ground member 104. A rotary shaft of each sensors is rigidlycoupled to an associated extension member. Sensors 60 are preferablyrelative optical encoders which provide signals to measure the angularrotation of a shaft of the sensor. The electrical outputs of theencoders are routed to microprocessor 50 (or host computer 18) asdetailed above. Other types of sensors can also be used, such aspotentiometers or other analog or digital sensors as described above. Itshould be noted that the present invention can utilize both absolute andrelative sensors.

The actuators 62 of the described embodiment are advantageouslypositioned to provide a very low amount of inertia to the joystickhandle 16. Actuators 62 are decoupled, meaning that the transducers areboth directly coupled to ground member 104 which is coupled to groundsurface 102, i.e. the ground surface carries the weight of theactuators, not the joystick handle 16. The weights and inertia of theactuators 62 are thus substantially negligible to a user handling andmoving handle 16. This allows more realistic forces to be transmitted touser object 14. The user feels very little compliance or "mushiness"when handling handle 16 due to the high bandwidth.

FIG. 5 is a perspective view of a capstan drive mechanism 114 shown ingreater detail. The drive mechanism 114 is coupled to extension aim 106as shown in FIGS. 3 and 4. Each capstan drive mechanism 114a and 114bshown in FIGS. 3 and 4 is preferably implemented the same way. Capstandrive mechanism 114 includes capstan drum 116, capstan pulley 118, andcable 120. Capstan drum 116 is preferably a wedge- or other-shapedmember having a curved end 122, e.g. the end 122 is a portion of thecircumference a circular shape about the axis of rotation. Other shapesof drum 116 can also be used. The drum 116 is rigidly coupled toextension member 106, which is pivotally coupled to ground member 104 ataxis A or B. Thus, when capstan drum 114 is rotated about axis A or B,the extension member 106 is also rotated. Curved end 122 is preferablyformed in an arc centered about the axis A or B, and is preferablypositioned about 0.030-0.035 inches away from pulley 118 using a 0.025inch diameter cable 120 (this distance can vary depending on thediameter of cable 120 used).

Capstan pulley 118 is a cylindrical member positioned near the curvedportion 122 of capstan drum 116. The pulley is rigidly coupled to arotating shaft of actuator 62. In other embodiments, the pulley can bethe actual driven shaft of the actuator. Cable 120 is preferably a thinmetal cable connected to curved portion 122 of the capstan drum. Othertypes of flexible members, such as durable cables, cords, wire, thinmetal bands, etc. can be used as well. A first end 124 of cable 120 isattached to a spring 126, where the spring 126 is positioned in anaperture 128 provided in the capstan drum 116. The cable is routed fromthe first end 124, through a guide 130a on the capstan drum, and tautlyover a portion of the curved end 122. The cable is then routed a numberof times around pulley 118; for example, the cable is wound twice aroundthe pulley in the shown example. The cable is then again drawn tautlyagainst curved end 122, is routed through a guide 130b of the capstandrum, and is attached to the other end of spring 126. In alternateembodiments, the cable 120 can be firmly attached to the capstan drum116 rather than spring 126; however, certain advantages are obtained byusing spring 126, as described below. The spring 126 can be attached tothe cable in a variety of assembly methods; for example, the cable canbe first routed around the drum 116, and a tool can be used to extendthe spring to allow the second end of the cable to be attached to thespring. Or, the cable is routed around its path but not around the drum,the motor is cocked at an angle, the cable is wrapped around the drum,and the motor is straightened to tighten the cable around the drum.

The actuator 62 rotates pulley 118 to move the cable 120 that is tightlywound on the pulley (the tension in cable 120 provides the grip betweencable and pulley). As pulley 118 is rotated by an actuator 62 (or as thedrum 116 is rotated by the manipulations of the user), a portion ofcable 118 wrapped around the pulley travels closer to or further fromactuator 62, depending on the direction that pulley 118 rotates. Thecable 120 transmits rotational force from the actuator-driven pulley 118to the capstan drum 116, causing capstan drum 116 to rotate about axis Aor B. This provides rotational force on the extension member 106 and thehandle 16 in the associated degree of freedom. It should be noted thatpulley 118, capstan drum 116 and extension member 106 will only actuallyrotate in space if the user is not applying the same or greater amountof rotational force to handle 16 in the opposite direction to cancel therotational movement. In any event, the user will feel the rotationalforce along the associated degree of freedom on handle 16 as forcefeedback.

For example, FIGS. 6a and 6b demonstrate the motion of the capstan drums116a and 116b and the corresponding motion of joystick handle 16. InFIG. 6a, the handle 16 has been moved diagonally in one direction (e.g.,down-right) to permissible limits, and the capstan drums 116 havecorrespondingly been rotated toward ground member 104 (note that thismovement can be caused by the user moving handle 16 or by actuators 62rotating pulley 118). A hole or depression 134 can be provided in thesurface of ground member 104 under each capstan drum 116a and 116b toallow the capstan drums to move to a desired rotational limit. Such ahole may not be necessary in implementations that position the axis ofrotation of the capstan drums at a far enough distance away from theground member 104. The ground member 104 also acts as a stop in thedescribed embodiment. A fence 105 is coupled to the ground member 104and is provided as four walls that extend up from the surface of theground member surrounding an extension (not shown) of handle 16. Theextension extends down in the center of the fence 105 so that when thehandle 16 is moved in any of the four directions or a combination ofdirections (e.g. diagonally), the handle extension impacts one side ofthe fence 105 and prevents further rotation in that direction. The fence105 thus is a stop that constrains the movement of handle 16 to adesired angular range. This impact with fence 105 occurs before thecapstan drums 116a and 16b impact the ground member 104, thus preventinga large load and/or damage to the capstan drums which might occur if thecapstan drums were allowed to impact a hard stop.

In FIG. 6b, the handle 16 has been moved diagonally to the oppositedirection to that shown in FIG. 6a, e.g. to the upper-left. The capstandrums 116a and 116b are correspondingly rotated away from the groundmember 104. As described above, fence 105 functions as a stop to themovement of the handle 15, so that the handle and capstan drums may notbe rotated further than shown in FIG. 6b. Thus, the fence 105 constrainsthe drums to an angular range defined by the dimensions of the fence 105and the handle extension into the fence. If the handle is to be moved inonly one direction (e.g., up or right), then only the capstan drum 116that corresponds to that axis of rotation is rotated.

The described embodiment of the present invention also is preferablyused with an automatic sensor calibration procedure to determine thelimits to the range of motion of manipulandum 16, which is used todetermine the position of the manipulandum 16 in its degrees of freedom.Although fence 105 provides a hard stop to limit the range of motion ofhandle 16 and thus provides a sensing range limit for sensors 60, someinaccuracies to the sensed range can still occur, especially based onmanufacturing variances between devices. In a preferred embodiment, adynamic calibration procedure is used, where the sensing range of thedevice is determined dynamically for a particular device based on therange of motion of the handle sensed up to the current point in time.Thus, the limits (minimum and maximum sensor range values) that havebeen detected so far in each degree of freedom are considered to be thelimits of the motion of the handle, and these limits are increased asthe handle is moved closer to the actual physical limits over time (andmore extreme sensor values are read). The sensing range eventuallyextends to the actual physical limits of the sensing range as the handleis moved to its limits during operation of the device as defined byfence 105. At any time, the current sensor range is normalized to astandard range of values that the host computer expects to receive. Sucha procedure is also described in co-pending patent application Ser. No.08/970,953, incorporated by reference herein.

A problem can occur in the dynamic calibration of the sensors due toflex or slop in the transmission system or other components of thedevice, especially if the transmission system includes components madeof at least a partially flexible material such as plastic (plasticcomponents are often desirable for high-volume mass market devices).Since actuator forces may often be output in the same direction as thephysical stop, the actuator forces can stress the transmission system sothat one or more components in the transmission system move anadditional amount while handle 16 is stopped by a fence 105 limit. Thelimits to the sensed range will be then be considered greater than whenno forces are output, causing inaccuracies in the sensed position of themanipulandum.

For example, in the present invention, the handle 16 may be stopped byfence 105, but capstan drums 116 may be moved a small distance in theirrotatable range past their corresponding limits by the actuator forceswhile the handle 16 remains stationary, i.e. the capstans are forced tocontinue to move relative to the handle due to flex in the system.Since, in the described configuration, the sensors 60 sense motion ofthe capstan drums 116 instead of handle 16 directly, the handle willappear to have moved when only the capstan drums have moved. However,when the handle is moved to a limit while no actuator forces are appliedin that direction, the casptan drums are not stressed past their limitsand have no extra movement with respect to the handle 16, so that thefence 105 is the sensed limit. Thus, the limits to the sensed range willbe greater when actuator forces are output than when no forces areoutput; and since the dynamic calibration procedure takes the greatest(maximum or minimum) sensed value as the sensor range limit, this limitwill present a problem when no actuator forces are applied. The userwill move the handle to a limit, but the microprocessor 90 or hostcomputer 18 will not read that position as being at a limit since thedynamic calibration procedure indicated that there is a greater sensingrange. This leads to inaccuracies in the sensed position of the handle;for example, the user will not be able to control a graphical object tomove to a limit on the screen even though the handle 16 is at a physicallimit.

To prevent detecting such a "false" limit caused by an actuatoroverstressing the transmission system, the calibration procedure used inthe present invention preferably only reads new sensor range limits whenthe actuator is not outputting a force in the direction of that limit.For example, the calibration procedure is preferably performed byinstructions implemented by microprocessor 90 (or, alternatively, hostcomputer 18) and is running during the normal operation of the forcefeedback device. The calibration procedure receives all sensor readingsoutput by the sensors 60. The procedure checks if the sensor reading isgreater than the maximum sensor value previously read (as determinedfrom previous sensor readings), or if it is less than the minimum sensorvalue previously read. If neither is true, the sensor value is ignoredby the calibration procedure. If the sensor value is greater than themaximum or less than the minimum, the procedure checks whether thesensor value was read during the output of any component of force byactuators 62 in the direction of the limit applicable to that sensorvalue. If so, then the calibration procedure ignores the sensor valuesince the actuator force may have stressed the transmission system pastthe physical limits provided when no actuator force is output. If noforces were output toward that limit, then that value becomes the newmaximum or minimum in the sensed range. Thus, the calibration procedureonly includes new maximum or minimum sensor values in the sensor rangethat are free from the influence of the actuator forces, so that thesensor range never extends past the range provided when no actuatorforces are output.

Referring back to FIG. 5, the tension in cable 120 should be provided ata level so that the cable 120 adequately grips the pulley 118 withoutslipping when the pulley is rotated, and also to provide negligiblebacklash or play between capstan drum 116 and pulley 118. Thus, thecable 120 preferably has a high degree of tension. In the presentinvention, the cable 120 is tensioned by spring 126, which couples bothends of the cable together. Cable 120 in the present invention ispreferably rigidly attached to the capstan drum 116 at anchor points byclamp 132 (preferably provided at either guide 130a or guide 130b).Clamp 132 secures the cable 120 to the drum 116 using friction toprevent the cable 120 from moving or slipping with respect to the drum.Thus, spring 126 pulls both ends of the cable toward each other fromopposite directions to tension the cable, while the clamp 132 anchorsthe cable to the drum.

When the cable 120 is installed, the cable is provided with enoughtension so that spring 126 is partially tensioned. In previous systems,the cable was typically attached directly to a capstan drum andtensioned by rotating a screw, pulling more cable through a holdingdevice, or by some other manual adjustment. That procedure significantlyadded to the production costs of the device, since each cable in eachdevice had to manually adjusted to a proper tension. In addition, as acable became loose over time in previous systems and introduced slackdue to motion and transmission of forces, an operator or user had tomanually re-tension the cables. Spring 126, in contrast, is aself-tensioning device that automatically provides the desired tensionin the cable without any need for manual adjustment, and does not allowslack to be introduced so that the cable does not become loose overtime. Since the ends of the cable are attached to spring 126, the springforce draws the cable tautly together and the tension in the cable isproperly maintained. Furthermore, since the ends of the cable are notattached to the drum 116, there is no tendency for the drum material toflex or "creep" over time due to the high cable forces. This advantageis most clear when the drums 116 are made of a material such as plastic,which is most appropriate for high volume, low cost production; sinceplastic tends to creep over time, the cable being attached to a metalspring 126 rather than the drum 116 is highly advantageous.

In other embodiments, such as the capstan mechanism disclosed inco-pending parent patent application Ser. No. 08/961,790 (Atty DocketNo. IMM1P033), only one end of the cable is attached to the spring 126,while the other end is securely anchored to the capstan drum 116.However, unlike the above embodiment having two ends attached to thespring, this embodiment has the disadvantage that the material of thedrum may flex or creep at the cable end directly attached to the drum,especially when plastic or other softer materials are used for drum 116.

A different improvement of the present invention to the capstan drivemechanism is the provision of flanges 136 on the curved end 122 ofcapstan drums 116. Flanges 136 are small raised portions at thelengthwise edges of the curved end 122 which function to prevent thecable 120 from slipping off the end 122 of the drum as the capstan drumis rotated. This can be helpful in preventing a major mechanicalmalfunction of the device if the capstan should happen to rotate toofar, where the cable may tend to migrate off one side of the drum andpulley; the flanges can prevent this by prevent cable motion to thesides of the drum and to prevent the cable from escaping between thedrum and the pulley. In addition, the flanges 136 ease the assemblyprocess when wrapping the cable on the capstan drum and capstan pulley,since the cable is less likely to slip off the drum during the assemblyor winding process. The curved end of the capstan drum 116 can also begrooved in alternate embodiments to further help in guiding the cableand preventing the cable from slipping off the capstan drum.

The capstan mechanism 114 provides a mechanical advantage to the outputforces of actuators 62 so that the force output of the actuators isincreased. The ratio of the diameter of pulley 118 to the diameter ofcapstan drum 116 (i.e. double the distance from associated axis ofrotation to the curved end of capstan drum 116) dictates the amount ofmechanical advantage, similar to a gear system. In the preferredembodiment, the ratio of drum to pulley is equal to 17:1, although otherratios can be used in other embodiments.

Alternatively, the pulley 118 can include guides, such as threadssimilar to a screw. The threads can function to help guide the cablealong the pulley as the pulley rotates and to provide cable 120 with abetter grip on pulley 118. Cable 120 can be positioned between thethreads.

In the present embodiment, the sensors 60 are only indirectly coupled tothe capstan drive mechanism 114 since the rotation of extension members116 is directly sensed. However, in an alternate embodiment, each sensorcan be coupled to a pulley 118 to measure the rotation of the pulleys.Cable 120 would then also transmit rotational motion from drum 116, asinitiated by a user on handle 16, to the pulley 118 and sensor 62. Suchan embodiment has the advantage of increasing sensor accuracy since thepulley rotates a greater number of times for each rotation of theextension member, and a greater resolution is achieved. Since little orno backlash is present using the capstan drive mechanism, this sensingis also quite accurate.

Capstan drive mechanism 114 is advantageously used in the presentinvention to provide transmission of forces and mechanical advantagebetween actuators 62 and joystick handle 16 without introducingsubstantial compliance, friction, or backlash to the system. A capstandrive provides increased stiffness, so that forces are transmitted withnegligible stretch and compression of the components. The amount offriction is also reduced with a capstan drive mechanism so thatsubstantially "noiseless" forces can be provided to the user. Inaddition, the amount of backlash contributed by a capstan drive is alsonegligible. "Backlash" is the amount of play that occurs between twocoupled rotating objects in a gear or pulley system. Two gears, belts,or other types of drive mechanisms could also be used in place ofcapstan drive mechanism 114 in alternate embodiments to transmit forcesbetween an actuator 62 and extension member 106. However, gears and thelike typically introduce some backlash in the system, and a user mightbe able to feel the interlocking and grinding of gear teeth duringrotation of gears when manipulating handle 16.

FIG. 7 is a perspective view of a releasable spring mechanism of thepresent invention. This mechanism allows physical springs to beselectively coupled to the rotating members of gimbal mechanism 100 tobias the members about their rotational axes of motion to a desiredposition when the user is not exerting force on handle 16, such as toplace the joystick handle 16 in a central upright position. When theinterface device is desired to be powered and forces applied, thephysical springs can be disconnected from the gimbal mechanism to allowthe forces to be applied without interference. A spring mechanism 150 ispreferably provided for both degrees of freedom of interface device 14in which forces are applied (only one spring mechanism, for axis A, isshown in FIGS. 3 and 4).

Releasable spring mechanism 150 includes a moveable catch member 152, agrounded catch member 154, and a spring 156. Moveable catch member 152(also shown between extension member 106a and grounded upright member110 in FIG. 4) is moved by the user to connect or disconnect the spring156 from the gimbal mechanism. In the described embodiment, an apertureis provided in ground member 104 so that a grip portion 158 of themember 152 may extend through the bottom of the interface device 14 toallow a user to move the member 152. The catch member 152 is moved by auser to engage or disengage grounded catch member 154, which in thedescribed embodiment is a peg or similar member coupled to groundedupright member 110. A latch 160 of the catch member 152 may receivecatch member 154 when the user moves the catch member 152 in theappropriate fashion, as described below.

Spring 156 is coupled at one end 162 to grounded upright member 110(which is part of grounded member 104) and is coupled at its other end157 to moveable catch member 152 (shown in FIGS. 8 and 9). Spring 156functions, when coupled to the extension member, to apply a spring forceto the gimbal mechanism and center the joystick handle about the axisassociated with the extension member 116 to which the mechanism 150 iscoupled (axis A in FIG. 7). Spring 156 does not apply any spring forceto the gimbal mechanism when the spring is disengaged, as describedbelow.

In the preferred embodiment, the releasable spring mechanism 150provides a preload condition that ensures the handle 16 is biased in acompletely upright position when the springs are engaged. The springs156 are preloaded by stretching them so that a spring force is appliedto the handle even when in an upright center position. This causes ahigher spring return force to be applied to the handle 16 even afteronly a small deflection from the upright center position (or otherdesired position). This preload condition prevents the handle 16 fromresting at slightly off-center positions caused by a weak spring forceat small handle deflections.

FIG. 8 is a side elevation view of releasable spring mechanism 150 inits engaged position, i.e., where spring 156 is engaged with the gimbalmechanism to provide a centering spring force on the joystick handle 16in the associated axis of motion. In this position, the latch 160 hasnot been engaged with catch member 154. This allows the catch member 152to be pulled in the direction of arrow 164 toward the grounded catchmember 162 because of the spring force in that direction contributed byspring 156.

Moveable catch member 152 preferably includes a central aperture 166through which the bearing portion 168 extends. Catch member 152 includesa central receptacle 169 on the edge of the aperture 166 and shaped sothat the catch member 152 has clearance from the bearing portion 168.Furthermore, the extension member 106 includes pegs 170 which arerigidly coupled to the extension member 106 and which extend into theaperture 166 of the catch member 152. Catch member 152 includesreceptacles 172 on the edge of aperture 166 which are shaped to receivethe pegs 170. Furthermore, grounded member 110 includes grounded pegs174 which also extend into the central aperture 166 of the catch member152. Catch member 152 includes receptacles 176 on the edge of aperture166 and shaped to receive the pegs 174.

In the engaged position, the catch member 152 is pulled toward catchmember 162, which causes the receptacles 176 to engage grounded pegs 174in the direction of arrow 164 and prevents the catch member 152 frommoving further towards catch member 162. In this position, whenextension member 106 is horizontally oriented along axis y, the pegs 170coupled to extension member 106 are substantially engaged withreceptacles 172. When the extension member 106 (and capstan drum 116) ismoved in a direction about axis A shown by arrow 180, as shown in FIG.8, then the peg 170a is forced against the receptacle 172a and the peg170b is moved away from receptacle 172b. This causes the catch member152 to move in a direction approximately opposite to arrow 164, which isagainst the direction of spring force. Thus, the extension member 106 isbiased with the spring to return to its horizontal position. Similarly,when the extension member 106 is moved (not shown) in a direction aboutaxis A shown by arrow 182, then the peg 170b is forced against thereceptacle 172b and the peg 170a is moved away from receptacle 172a.This again causes the catch member 152 to move in a directionapproximately opposite to arrow 164, providing a spring force onextension member 106 and biasing the extension member to return to itshorizontal position.

The weight of the capstan drums 116 and extension members 106 may causethe spring return force to be asymmetric, i.e., if the same spring forceis used to force the member 106/drum 116 down to the center position asis used to force the member 106/drum 116 up to the center position, themember/drum will not be forced by the same amount since the spring forceup has to overcome the weight of the member/drum (gravity) while thespring force down is assisted by the weight of the member/drum. Thisasymmetry can be compensated for by repositioning the pins 170 aboutaxis A so that a greater amount of spring deflection is provided whenthe member/drum rotates down, thereby providing a greater spring forcewhen the member/drum is returned up to the center position in comparisonto the spring force provided when moving the member/drum down to thecenter position. This can be accomplished, for example, by positioningpin 170b further from axis A than pin 170a.

In sum, the engaged mode of the mechanism 150 provides a spring force onextension member 106 in both of its directions about axis A that biasesthe extension member and thus the joystick handle 16 to a predeterminedposition. In the described embodiment, the predetermined position isapproximately the center position of the degree of freedom. In otherembodiments, the spring force can bias the handle 16 to a differentdesired predetermined position (e.g. an upright position of handle 16may not be the center of a degree of freedom in some embodiments). Thisspring force prevents the joystick handle from leaning to one side whenforces are not being exerted by the actuators 62 and when no externalforces (such as from the user) are applied to the handle. This can beuseful in situations where the joystick is being displayed and/or tested(e.g. by prospective consumers) when the joystick is not powered. Forexample, many stores wish to provide joystick demonstration models forconsumers to try out, determine how the joystick handle feels, etc. Thedemonstration models typically are not powered, and without power thejoystick handles tilt to one side, giving the undesired appearance of afaulty or broken joystick. The springs 156 center the handle 16 in itsworkspace so that the handle is in an upright position (or other desiredposition) to prevent this undesired appearance. In addition, when tryingan unpowered demonstration force feedback joystick or other forcefeedback interface device, the user does not get any sense of how thedevice feels when powered. The springs mechanism 150 of the presentinvention provides an approximation of a centering force that providesthe user with at least an indication of how the joystick feels when itis in normal operation with centering forces applied.

FIG. 9 is a side elevation view of releasable spring mechanism 150 in adisengaged position, i.e., where the springs 156 have been disengagedfrom the members of the gimbal mechanism to allow free movement of thejoystick handle 16. In this position, the user has pushed the moveablecatch member 152 to be engaged with grounded catch member 154.Preferably, the user pushes on grip 158 in the directions indicated byarrows 186 to engage these catch members 154 and 160. In otherembodiments, different mechanisms can be provided that allow the user tomove mechanism 150 into the disengaged position, such as a button orlever which performs the same engagement, or an automatic system thatallows the host computer or microprocessor 50 to put the device in theengaged or disengaged position (using a solenoid or other actuator, forexample).

In the disengaged position of FIG. 9, the moveable catch member 152 hasbeen forced in a direction indicated by arrow 188 to the position shownin FIG. 9; the member 152 is locked in this position by the latch 160.This position stretches spring 156 and causes the central aperture 166of catch member 152 to move in direction 188 relative to pegs 170 andpegs 174. Thus, the receptacles 172 and 176 are provided in a positionsome distance away from pegs 170 and 174, i.e. the pegs 170 and 174 arenow in a more central position within aperture 166. This allows themember 106 to move freely within the space of aperture 166, i.e. whenthe member 106 moves in a direction 180 or 182, the pegs 170a and 170bare able to move within aperture 166 without engaging receptacles 172aand 172b. No spring bias is therefore placed on the member 106 as itmoves. The handle 16 (and thus the capstan drum 116) preferablyencounters a hard stop in its motion before any of the pegs 170 engagethe catch member 152.

Having no mechanical spring forces present on the members of the gimbalmechanism is important when outputting forces on the gimbal mechanism100. When interface device 14 is powered, actuators 62 may apply forcesto members 106 to cause any of a variety of force sensations to the usergrasping joystick handle 16, as explained above. Any forces applied byphysical springs 156 would greatly interfere with forces generated byactuators 62, thus decreasing the fidelity and realism of any generatedforce sensations. In addition, forces from physical springs 156 are notneeded to center handle 16 when the joystick is powered because themicroprocessor 50 can control actuators 62 to output simulated springforces on the members 106 to center the joystick in its workspace. Thus,even if the user does not want forces generated on the joystick, theactuators 62 can be used to apply centering spring forces equivalent tothose normally provided by physical springs in non-force feedbackjoysticks.

While this invention has been described in terms of several preferredembodiments, it is contemplated that alterations, modifications andpermutations thereof will become apparent to those skilled in the artupon a reading of the specification and study of the drawings. Forexample, the mechanical portion of the interface can take a variety offorms, including the closed loop linkage described herein, a mechanismhaving linearly-moving members, a slotted bail mechanism, or othermechanisms. Likewise, other types of mechanisms can be provided fordisengaging and engaging the physical springs of the interface devicewith the moving mechanical members. In addition, the sensors andactuators used can take a variety of forms. Furthermore, certainterminology has been used for the purposes of descriptive clarity, andnot to limit the present invention. It is therefore intended that thefollowing appended claims include all such alterations, modificationsand permutations as fall within the true spirit and scope of the presentinvention.

What is claimed is:
 1. A mechanism for providing selective engagement ofspring members to a user manipulatable object in a force feedbackinterface device coupled to a host computer, the mechanism comprising:agrounded member coupled to a ground; a moveable member included in aforce feedback mechanism, said moveable member moveable in a degree offreedom by an actuator and transmitting forces to said usermanipulatable object of said force feedback interface device; a springmember operative to be selectively coupled and selectively decoupledbetween said grounded member and said moveable member; and a catchmechanism coupled to said spring member, said catch mechanism includinga first catch member coupled to a first end of said spring member and asecond catch member that is coupled between said grounded member and asecond end of said spring member, wherein said first catch member may beselectively engaged and selectively disengaged with said second catchmember to selectively couple and decouple said spring member.
 2. Amechanism as recited in claim 1 wherein said spring member provides aspring force on said moveable member that biases said user manipulatableobject to a predetermined position in said degree of freedom.
 3. Amechanism as recited in claim 2 wherein said spring force approximatelycenters said user manipulatable object in said degree of freedom.
 4. Amechanism as recited in claim 1 wherein said first catch member engagesa portion of said moving member.
 5. A mechanism as recited in claim 1wherein said first catch member includes at least one receptacle forreceiving at least one peg coupled to said moveable member, wherein whensaid spring member is engaged with said force feedback mechanism, saidpeg engages said receptacle when said moveable member is moved and isbiased by said spring member, and when said spring member is disengagedwith said force feedback mechanism, said peg does not engage saidreceptacle when said moveable member is moved.
 6. A mechanism as recitedin claim 1 wherein said first catch member is moveable by a user of saidinterface device to selectively engage said spring members with saidforce feedback mechanism.
 7. A mechanism as recited in claim 6 wherein aportion of said first catch member extends through an opening in ahousing of said force feedback interface device for access by said user.8. A mechanism as recited in claim 1 wherein said moveable member isrotatable about an axis of rotation.
 9. A mechanism as recited in claim8 wherein said first catch member includes an aperture and wherein saidmoveable member includes two pegs, wherein each of said pegs extendsthrough said aperture on opposite sides of said axis of rotation, andwherein one of said pegs engages said first catch member when saidmoveable member is rotated, thereby exerting a spring force from saidspring member on said moveable member.
 10. A mechanism as recited inclaim 9 wherein when said spring member is decoupled between saidgrounded member and said moveable member, neither of said pegs engagessaid first catch member when said moveable member is moved.
 11. Amechanism as recited in claim 10 wherein said first catch memberincludes a latch for engaging said second catch member, thereby lockingsaid first catch member in a position such that neither of said pegsengages said first catch member when said moveable member is moved. 12.A mechanism as recited in claim 2 wherein said spring member ispreloaded when said user manipulatable object is positioned at saidpredetermined position.
 13. A force feedback interface device forproviding forces on a user manipulating said interface device whencoupled to a host computer, said force feedback interface devicecomprising:a user manipulandum for physical contact by a user; a sensorfor detecting a position of said user manipulandum in a degree offreedom; an actuator coupled to said user manipulandum for applying aforce to said user manipulandum; a linkage mechanism coupled betweensaid actuator and said user manipulandum, said linkage mechanismproviding said degree of freedom and transmitting said force from saidactuator to said user manipulandum; and a spring selection mechanismcoupled to said linkage mechanism and selectively allowing a springforce to be applied on said user manipulandum, said spring selectionmechanism comprising:a physical spring; and a catch mechanism coupled tosaid physical spring, said catch mechanism including a first catchmember coupled to a first end of said spring and a second catch memberthat is coupled between a grounded surface and a second end of saidspring, wherein said first catch member may be selectively engaged andselectively disengaged with said second catch member to selectivelyallow said spring to be coupled to said linkage mechanism.
 14. A forcefeedback interface device as recited in claim 13 wherein said firstcatch member is coupled between a moveable member of said linkagemechanism and said spring when said first catch member is disengagedfrom said second catch member.
 15. A force feedback interface device asrecited in claim 14 wherein said first catch member is coupled betweensaid spring and said second catch member when said first catch member isengaged with said second catch member.
 16. A force feedback interfacedevice as recited in claim 15 wherein a moveable member of said linkagemechanism is rotatable about an axis of rotation and wherein said firstcatch member includes an aperture and said moveable member includes twopegs, wherein each of said pegs extends through said aperture onopposite sides of said axis of rotation, and wherein one of said pegsengages said first catch member when said moveable member is rotated,thereby exerting a spring force from said spring member on said moveablemember.
 17. A force feedback interface device as recited in claim 13wherein said spring provides a spring force that approximately centerssaid user manipulandum in said degree of freedom.
 18. A force feedbackinterface device as recited in claim 17 wherein said actuator is a firstactuator, and further comprising a second actuator, wherein a firstmember of said linkage mechanism is coupled between said first actuatorand said user manipulandum and a second member of said linkage mechanismis coupled between said second actuator and said user manipulandum. 19.A force feedback interface device as recited in claim 18 wherein saidspring selection mechanism is a first spring selection mechanism coupledto said first member, and further comprising a second spring selectionmechanism coupled to said second member.
 20. A force feedback interfacedevice as recited in claim 13 further comprising a capstan drivemechanism coupled between said actuator and said linkage mechanism,wherein said capstan drive mechanism includes a capstan pulley coupledto said actuator, a capstan drum coupled to said linkage mechanism, anda cable coupling said capstan pulley to said capstan drum.
 21. A forcefeedback interface device as recited in claim 20 wherein said capstandrum includes a tensioning spring member coupled to both ends of saidcable for tensioning said cable.
 22. A force feedback interface deviceas recited in claim 20 wherein said capstan drum includes a curved endover which said cable is routed, said cable coupled to said capstan drumat two different ends of said cable, and wherein said curved endincludes flanges arranged on sides of said curved end to substantiallyprevent said cable from slipping off said sides of said curved end. 23.A force feedback interface device as recited in claim 13 wherein saiduser manipulandum is a joystick handle.
 24. A force feedback interfacedevice as recited in claim 13 wherein said linkage mechanism is a closedloop five-member linkage.
 25. A force feedback interface device asrecited in claim 13 wherein said spring selection mechanism includes acatch member coupled between said spring, and said linkage mechanism,wherein said catch member operates as a switch and is moveable by saiduser.
 26. A force feedback interface device as recited in claim 20further comprising a stop coupled to a ground, said stop preventingmotion of said user manipulandum in a direction past a predeterminedrange, wherein said user manipulandum impacts said stop before saidcapstan drum reaches a limit to movement.
 27. A force feedback interfacedevice a s recited in claim 13 wherein a sensing range for said forcefeedback interface device is dynamically determined, wherein saidsensing range does not include positions of said user manipulandumsensed during said force application by said actuators in a directiontowards a range limit corresponding with said positions.
 28. A methodfor selectively providing a spring force in a force feedback interfacedevice using a physical spring, the method comprising:selectivelydecoupling a spring member from a user manipulandum when an actuator ofsaid interface device is to output forces on said user manipulandum,said user manipulandum being physically contacted by a user, whereinsaid spring member is coupled between said user manipulandum and alinkage mechanism, said user manipulandum physically contacted by a userto feel said forces output on said user manipulandum; and selectivelycoupling said spring member to said user manipulandum when said actuatoris not to output forces on said user manipulandum, wherein said springmember provides a centering spring force on said user manipulandum whencoupled to said user manipulandum for centering said user manipulandum adegree of freedom.
 29. A method as recited in claim 28 wherein saidforces output on said user manipulandum by said actuator includecentering spring forces.
 30. A method as recited in claim 28 whereinsaid selectively decoupling and selectively coupling are accompli shedusing a spring selection mechanism coupled to said linkage mechanism.31. A method as recited in claim 28 wherein said selectively couplingsaid spring member is performed when said force feedback interfacedevice is not powered.
 32. A force feedback interface device coupled toa host computer and providing forces to a user manipulating saidinterface device, the interface device comprising;a user manipulandumfor physical contact by a user; a sensor for detecting a position ofsaid user manipulandum in a degree of freedom; an actuator coupled tosaid user manipulandum for applying a force to said user manipulandum; alinkage mechanism coupled between said actuator and said usermanipulandum, said linkage mechanism providing said degree of freedomand transmitting said force from said actuator to said usermanipulandum; and a capstan drive mechanism coupled between saidactuator and said linkage mechanism, wherein said capstan drivemechanism includes a pulley coupled to said actuator, a moveable capstandrum coupled to said linkage mechanism, and a cable coupling said pulleyto said capstan drum, said cable having two ends, wherein a tensioningspring member is coupled to both ends of said cable for tensioning saidcable, and wherein said capstan drum includes a curved end over whichsaid cable is routed, said curved end including flanges arranged onsides of said curved end to substantially prevent said cable fromslipping off said sides of said curved end.
 33. An interface device asrecited in claim 32 wherein said degree of freedom is a rotary degree offreedom and wherein said capstan drum is coupled to a member of saidlinkage mechanism and rotates about an axis of rotation.
 34. Aninterface device as recited in claim 32 wherein said curved end isapproximately a portion of a circumference of a cylinder.
 35. Aninterface device as recited in claim 32 further comprising a springselection mechanism coupled to said linkage mechanism and selectivelyallowing a physical spring to be coupled to said linkage mechanism toprovide a spring force on said user manipulandum.
 36. An interfacedevice as recited in claim 32 wherein a sensing range for said sensor isdynamically determined, and wherein said sensing range is not based onpositions of said user manipulandum sensed during said force applicationby said actuators in a direction towards a range limit correspondingwith said positions.
 37. A force feedback interface device coupled to ahost computer and providing forces to a user manipulating said interfacedevice, the interface device comprising;a user manipulandum for physicalcontact by a user; a sensor for detecting a position of said usermanipulandum in a degree of freedom; an actuator coupled to said usermanipulandum for applying a force to said user manipulandum; a linkagemechanism coupled between said actuator and said user manipulandum, saidlinkage mechanism providing said degree of freedom and transmitting saidforce from said actuator to said user manipulandum; and a capstan drivemechanism coupled between said actuator and said linkage mechanism andproviding mechanical advantage to said force, wherein said capstanmechanism includes a pulley coupled to said actuator, a moveable capstandrum coupled to said linkage mechanism, and a cable having two ends,each of said ends coupled to said capstan drum, said cable coupling saidpulley to said capstan drum, and wherein said capstan drum includes atensioning spring member coupled between one end of said cable and saidcapstan drum for tensioning said cable to reduce slack in said cable.38. A force feedback interface device as recited in claim 37 whereinsaid tensioning spring member is coupled to both ends of said cable. 39.A force feedback interface device as recited in claim 38 furthercomprising an anchoring device coupled between said capstan drum andsaid cable, said anchoring device coupling said cable to said capstandrum to substantially prevent slippage of said cable with respect tosaid drum.
 40. A force feedback interface device as recited in claim 39wherein said anchoring device includes a clamp.
 41. A force feedbackinterface device for providing forces on a user manipulating saidinterface device when coupled to a host computer, said force feedbackinterface device comprising:a user manipulandum for physical contact bya user; a sensor for detecting a position of said user manipulandum in adegree of freedom; an actuator coupled to said user manipulandum forapplying a force to said user manipulandum; a linkage mechanism coupledbetween said actuator and said user manipulandum, said linkage mechanismproviding said degree of freedom and transmitting said force from saidactuator to said user manipulandum; a spring selection mechanism coupledto said linkage mechanism and selectively allowing a physical spring tobe coupled to said linkage mechanism to provide a spring force to beapplied on said user manipulandum; and a capstan drive mechanism coupledbetween said actuator and said linkage mechanism, wherein said capstandrive mechanism includes a capstan pulley coupled to said actuator, acapstan drum coupled to said linkage mechanism, and a cable couplingsaid capstan pulley to said capstan drum, wherein said capstan drumincludes a tensioning spring member coupled to both ends of said cablefor tensioning said cable.
 42. A force feedback interface device coupledto a host computer and providing forces to a user manipulating saidinterface device, the interface device comprising:a user manipulandumfor physical contact by a user; a sensor for detecting a position ofsaid user manipulandum in a degree of freedom; an actuator coupled tosaid user manipulandum for applying a force to said user manipulandum; alinkage mechanism coupled between said actuator and said usermanipulandum, said linkage mechanism providing said degree of freedomand transmitting said force from said actuator to said usermanipulandum; and a capstan drive mechanism coupled between saidactuator and said linkage mechanism, where in said capstan mechanismincludes a pulley coupled to said actuator, a moveable capstan drumcoupled to said linkage mechanism, and a cable coupling said pulley tosaid capstan drum, and wherein said capstan drum includes a tensioningspring member coupled to both ends of said cable for tension ing saidcable.